package vars

/**
 * @author: kevin  
 * @date: 14:16 2021/4/27
 */
object Var02 {
  def main(args: Array[String]): Unit = {
    //类型推到
    var num = 10
    println(num.isInstanceOf[Int])
    //类型确定后，就不能修改，说明scala是强数据类型
    //num = 2.3 错误

    //在声明/定义一个变量时，可以使用var或者val来修饰，var修饰的比那辆可改变，val修饰的变量不可改
    var age = 10 //age可以改变
    age = 30

    val num2 = 30
    //num2 = 10 // val修饰的变量是不可变
    //val没有后线程安全问题，因此效率高，推荐使用val
    //如果对象需要改变，则使用var
    val dog = new Dog
//    dog = new Dog // Reassignment to val
    dog.age = 90
    dog.name = "xiaohua"
    println(dog.age + " : " + dog.name)
  }
}
class Dog{
  var age: Int = 0
  var name: String = ""
}
